Modern high-performance processors store information and use pointers to retrieve the stored information. For example, processors, such as a central processing unit (CPU) and/or a graphics processing unit (GPU), may execute tasks, applications, and/or computer programs using memory (e.g., device memory and/or processor memory). While executing an application, such as a mobile application, processors may store information within memory and return a pointer back to the mobile application. The pointers may be a 64-bit string that indicates a memory address storing the information. Using the pointer, processors may retrieve the information at a later time.
However, using pointers to retrieve information may be inefficient and require significant memory space. For example, processors may expend substantial amounts of execution time to retrieve the information using these pointers. Further, along with the actual information being stored in memory, the processor may need to store the pointer in memory as well. Storing pointers require significant amounts of memory space, especially if the actual data sizes are small relative to the pointer sizes. To circumvent this, traditionally, processors executing software have attempted to compress these pointers. But, the compressed pointers may be many different sizes. Thus, there is a lot of complexity on managing how to store the compressed pointers of varying sizes in a fixed size block of memory. Further, compression and decompression usually needs to be applied to a large block of data, even if the processor executing software tries to access the memory pointed to by a sole pointer within the compressed block of data. This compression and decompression has a performance and/or latency cost. Typically, higher compression ratios require compressing more data, but the more data that is compressed, the greater the cost to compress and decompress it for a single access to one of the inflated items. Accordingly, there exists a need for one or more improved methods and devices to address one or more of the above-noted drawbacks.